Skip to content

feat(lua): sonar item & vehicle part, overmap reveal bindings#8038

Open
shmakota wants to merge 5 commits intocataclysmbn:mainfrom
shmakota:sonar_part
Open

feat(lua): sonar item & vehicle part, overmap reveal bindings#8038
shmakota wants to merge 5 commits intocataclysmbn:mainfrom
shmakota:sonar_part

Conversation

@shmakota
Copy link
Collaborator

@shmakota shmakota commented Feb 4, 2026

Purpose of change (The Why)

Lake content is hard to access, and people have been exploiting prospecting pick mechanics to reveal it.

Describe the solution (The How)

Add the long-awaited sonar item & vehicle part. This can be used to scan 7 tiles around the player, and 5 deep. Using this new item, the player can explore and plan underwater expeditions much easier without wasting resources. They can be found either at freshwater research stations, or found already installed in fishing & scuba boats.

Describe alternatives you've considered

Implementing it in C++? We needed the bindings to reveal stuff on the overmap, anyways, so I figured this would be a good usage & example for them.

Unhardcoding the list of underwater location patterns? Would likely require a flag for underwater locations, and wasn't sure of the best way to go about this, so gonna leave it as is for now.

Testing

Spawned in a fishing boat, used it to reveal the underwater terrain nearby.

Additional context

image image

Checklist

Mandatory

Optional

  • This PR modifies lua scripts or the lua API.
    • I have added lua scope to the PR title.
    • I have added type annotations to functions so that it's safe and easy to maintain.
    • I have committed the output of deno task docs:gen so the Lua API documentation is updated.

@github-actions github-actions bot added src changes related to source code. JSON related to game datas in JSON format. lua PRs and issues related to Lua scripting labels Feb 4, 2026
@autofix-ci
Copy link
Contributor

autofix-ci bot commented Feb 4, 2026

Autofix has formatted code style violation in this PR.

I edit commits locally (e.g: git, github desktop) and want to keep autofix
  1. Run git pull. this will merge the automated commit into your local copy of the PR branch.
  2. Continue working.
I do not want the automated commit
  1. Format your code locally, then commit it.
  2. Run git push --force to force push your branch. This will overwrite the automated commit on remote with your local one.
  3. Continue working.

If you don't do this, your following commits will be based on the old commit, and cause MERGE CONFLICT.

Copy link
Collaborator

@WishDuck WishDuck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once PR & fixing merge conflicts is in we are all set

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

JSON related to game datas in JSON format. lua PRs and issues related to Lua scripting src changes related to source code.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants